package com.xiehospital.common.core.domain.entity;
import java.util.Arrays;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.xiehospital.common.annotation.Excel;
import com.xiehospital.common.core.domain.BaseEntity;


/**
 * 床位信息对象 sys_bed
 *
 * @author xierujian
 * @date 2024-02-21
 */
public class SysBed extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    @Excel(name = "床位编号")
    /** 床位编号 */
    private Long bedId;

    /** 床位类型组 */
    @Excel(name = "床位类型组")
    private Long btypeId;

    /** 床位状态(0空闲，1占用，2预约) */
    @Excel(name = "床位状态(0空闲，1占用，2预约)")
    private Long status;

    /** 床位任务 */
    @Excel(name = "床位任务")
    private String bedTask;

    /** 患者编号 */
    @Excel(name = "患者编号")
    private Long patientId;

    /** 医生信息组 */
    @Excel(name = "医生信息组")
    private Long doctorInfo;

    /** 护士信息组 */
    @Excel(name = "护士信息组")
    private Long nurseInfo;

    /** 手术预约 */
    @Excel(name = "手术预约")
    private String surgeryAppointment;

    /** 入住时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入住时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date checkinTime;

    /** 床位类型组 */
    private SysBtype btype;

    /** 患者信息组 **/
    private SysPatient patient;
    // 新添加的字段，用于存储医生和护士的名字
    //
    // /** 预约信息组 **/
    private SysPatient reserve;
    // 新添加的字段，用于存储医生和护士的名字
    private String doctorName;
    private String nurseName;


    public SysPatient getReserve() {
        return reserve;
    }

    public void setReserve(SysPatient reserve) {
        this.reserve = reserve;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public SysPatient getPatient() {
        return patient;
    }

    public void setPatient(SysPatient patient) {
        this.patient = patient;
    }

    public String getDoctorName() {
        return doctorName;
    }

    public void setDoctorName(String doctorName) {
        this.doctorName = doctorName;
    }

    public String getNurseName() {
        return nurseName;
    }

    public void setNurseName(String nurseName) {
        this.nurseName = nurseName;
    }

    public SysBtype getBtype() {
        return btype;
    }

    public void setBtype(SysBtype btype) {
        this.btype = btype;
    }

    public void setBedId(Long bedId)
    {
        this.bedId = bedId;
    }

    public Long getBedId()
    {
        return bedId;
    }


    public void setBedTask(String bedTask)
    {
        this.bedTask = bedTask;
    }

    public String getBedTask()
    {
        return bedTask;
    }

    public void setSurgeryAppointment(String surgeryAppointment)
    {
        this.surgeryAppointment = surgeryAppointment;
    }

    public String getSurgeryAppointment()
    {
        return surgeryAppointment;
    }
    public void setCheckinTime(Date checkinTime)
    {
        this.checkinTime = checkinTime;
    }

    public Date getCheckinTime()
    {
        return checkinTime;
    }

    public Long getBtypeId() {
        return btypeId;
    }

    public void setBtypeId(Long btypeId) {
        this.btypeId = btypeId;
    }

    public Long getStatus() {
        return status;
    }

    public void setStatus(Long status) {
        this.status = status;
    }

    public Long getPatientId() {
        return patientId;
    }

    public void setPatientId(Long patientId) {
        this.patientId = patientId;
    }

    public Long getDoctorInfo() {
        return doctorInfo;
    }

    public void setDoctorInfo(Long doctorInfo) {
        this.doctorInfo = doctorInfo;
    }

    public Long getNurseInfo() {
        return nurseInfo;
    }

    public void setNurseInfo(Long nurseInfo) {
        this.nurseInfo = nurseInfo;
    }

    @Override
    public String toString() {
        return "SysBed{" +
                "id=" + id +
                ", bedId=" + bedId +
                ", btypeId=" + btypeId +
                ", status=" + status +
                ", bedTask='" + bedTask + '\'' +
                ", patientId='" + patientId + '\'' +
                ", doctorInfo='" + doctorInfo + '\'' +
                ", nurseInfo='" + nurseInfo + '\'' +
                ", surgeryAppointment='" + surgeryAppointment + '\'' +
                ", checkinTime=" + checkinTime +
                ", btype=" + btype +
                ", patient=" + patient +
                ", reserve=" + reserve +
                ", doctorName='" + doctorName + '\'' +
                ", nurseName='" + nurseName + '\'' +
                '}';
    }
}